Textbook of Applied Cryptography
(a work in progress)
(a work in progress)
Alfred Menezes, Paul van Oorschot, Bart Preneel
Updated on September 9, 2026
This textbook provides an introduction to applied cryptography, with an algorithmic focus. It is intended both for practitioners, and as a textbook for an undergraduate course. Our aim is to provide an accessible treatment without sacrificing attention to detail. We hope that the up-to-date coverage of recent advances in the field, and mathematical rigor compared to other introductory books, make it also suitable for a graduate course.
We offer a carefully chosen selection of cryptographic building blocks, algorithms, protocols, key management techniques and related methods, with a focus on what is used in practice and important to practitioners. We reinforce these with examples, applications, exercises, and real world case studies and deployments.
This book is a work in progress with 12 of the 15 chapters currently available. As such, readers should expect that some sections may contain missing cross-references, and the notation or terminology may not yet be fully consistent throughout. The content will continue to evolve as the manuscript develops, and revisions will aim to fill in gaps, improve clarity, and ensure uniformity in style and presentation. Comments, corrections, and feedback are welcome and may be sent to textbook.appliedcrypto@gmail.com.
All chapters (pdf)
Individual chapters
Table of contents
1. Cryptography: An overview
3. Block ciphers and permutations
4. Hash functions
5. MAC algorithms
6. Authenticated encryption
8. RSA
9. Elliptic curve cryptography
10. Random and pseudorandom bit generation
11. Password-based cryptography
12. Public-key certificates and infrastructure
13. Authenticated key establishment: principles and protocols
14. Cryptographic systems in practice
15. Post-quantum cryptography
A. Probability theory background
B. Information theory background
C. Algebra background